package cn.onesdream.app.api.service;

import cn.onesdream.app.common.exception.ServiceException;
import cn.onesdream.app.dao.entity.Star;
import cn.onesdream.app.dao.entity.StarType;

import java.util.List;

/**
 * @author WangShiyu
 * @date 2021/3/9 11:30
 */
public interface StarService {
    /**
     * 添加每日属性的小星星事件
     * @param userId 用户id
     * @param starTypeId 星星类型id
     */
    void addDailyStar(Integer userId, Byte starTypeId) throws ServiceException;

    /**
     * 更新用户星星数量
     * @param userId 用户id
     * @param starTypeId 星星类型id
     */
    void updateUserStarNumber(Integer userId, Byte starTypeId) throws ServiceException;

    /**
     * 添加小星星事件
     * @param userId 用户id
     * @param starTypeId 星星类型id
     */
    void addStar(Integer userId, Byte starTypeId) throws ServiceException;

    /**
     * 获取事件类型
     * @param starTypeId 事件类型id
     * @return
     */
    StarType getStarType(Byte starTypeId);

    /**
     * 获取小星星事件
     * @param userId 用户id
     * @return
     */
    List<Star> getStar(Integer userId);
}
